#ifndef MEASURE_BULLET_H
#define MEASURE_BULLET_H

#include "halconcpp/HalconCpp.h"
using namespace HalconCpp;

struct M_B
{
    //换算比例
    float para1;
    //——————————————————————高度方向
    //补偿值
    float para3;
    //标准值
    float para4;
    //上限值
    float para5;
    //下限值
    float para6;
    //平行度补偿值
    float para7;
    //平行度标准值
    float para8;
    //平行度偏差值
    float para9;
    //——————————————————————长度方向
    //补偿值
    float para10;
    //标准值
    float para11;
    //上限值
    float para12;
    //下限值
    float para13;
    //平行度补偿值
    float para14;
    //平行度标准值
    float para15;
    //平行度偏差值
    float para16;
    //------------------图像处理
    //粗定定位阈值
    float para17;
    //找边向外沿伸长度
    float para18;
    //找边sigma
    float para19;
    //找边阈值
    float para20;

    //角度1补偿值
    float para21;
    //角度1标准值
    float para22;
    //角度1上限值
    float para23;
    //角度1下限值
    float para24;


    //角度2补偿值
    float para25;
    //角度2标准值
    float para26;
    //角度2上限值
    float para27;
    //角度2下限值
    float para28;


    //角度3补偿值
    float para29;
    //角度3标准值
    float para30;
    //角度3上限值
    float para31;
    //角度3下限值
    float para32;


    //角度4补偿值
    float para33;
    //角度4标准值
    float para34;
    //角度4上限值
    float para35;
    //角度4下限值
    float para36;

    // 总体补偿值
    float para2;


};
struct M_B_PLACE
{
    HalconCpp::HTuple x1;
    HalconCpp::HTuple y1;
    HalconCpp::HTuple x2;
    HalconCpp::HTuple y2;
    HalconCpp::HTuple hvCCDHandle;
};

class Measure_Bullet
{

public:
    Measure_Bullet();
    int M_Bullet(HObject Img,HTuple &OutPara,HObject &OutImg);
public:

	M_B m_part;
	M_B_PLACE m_part2;
    //宽度
    bool Flag1;
    //长度
    bool Flag2;
    //角度1
    bool Flag3;
    //角度2
    bool Flag4;

    //超出上限
    //宽度
    bool Flag11;
    //长度
    bool Flag22;
    //角度1
    bool Flag33;
    //角度2
    bool Flag44;

};

#endif // MEASURE_BULLET_H
